// import { getBrowserSize } from './browser.util';

/* eslint-disable camelcase */
module.exports =  {
    code: true,
    options: {
      //无痕配置 && 滑动验证、刮刮卡通用配置
      appkey: 'FFFF000000000176F978',
      scene: 'nvc_message_h5',
      isH5: true,
      popUp: false,
      renderTo: '#captcha',
      trans: { key1: 'code0', nvcCode: 400 },
      language: 'cn',
      //滑动验证长度配置
      customWidth: 300,
      //刮刮卡配置项
      width: 300,
      height: 125,
      elements: [
        '//img.alicdn.com/tfs/TB17cwllsLJ8KJjy0FnXXcFDpXa-50-74.png',
        '//img.alicdn.com/tfs/TB17cwllsLJ8KJjy0FnXXcFDpXa-50-74.png',
      ],
      bg_back_prepared: '//img.alicdn.com/tps/TB1skE5SFXXXXb3XXXXXXXXXXXX-100-80.png',
      bg_front:
        '',
      obj_ok: '//img.alicdn.com/tfs/TB1rmyTltfJ8KJjy0FeXXXKEXXa-50-74.png',
      bg_back_pass: '//img.alicdn.com/tfs/TB1KDxCSVXXXXasXFXXXXXXXXXX-100-80.png',
      obj_error: '//img.alicdn.com/tfs/TB1q9yTltfJ8KJjy0FeXXXKEXXa-50-74.png',
      bg_back_fail: '//img.alicdn.com/tfs/TB1w2oOSFXXXXb4XpXXXXXXXXXX-100-80.png',
      upLang: {
        cn: {
          _ggk_guide: '请在屏幕上滑动，刮出两面盾牌',
          _ggk_success: '恭喜您成功刮出盾牌<br/>继续下一步操作吧',
          _ggk_loading: '加载中',
          _ggk_fail: [
            '呀，盾牌不见了<br/>请',
            'javascript:noCaptcha.reset()',
            '再来一次',
            '或',
            'http://survey.taobao.com/survey/QgzQDdDd?token=%TOKEN',
            '反馈问题',
          ],
          _ggk_action_timeout: [
            '我等得太久啦<br/>请',
            'javascript:noCaptcha.reset()',
            '再来一次',
            '或',
  
            'http://survey.taobao.com/survey/QgzQDdDd?token=%TOKEN',
            '反馈问题',
          ],
          _ggk_net_err: [
            '网络实在不给力<br/>请',
            'javascript:noCaptcha.reset()',
            '再来一次',
            '或',
            'http://survey.taobao.com/survey/QgzQDdDd?token=%TOKEN',
            '反馈问题',
          ],
          _ggk_too_fast: [
            '您刮得太快啦<br/>请',
            'javascript:noCaptcha.reset()',
            '再来一次',
            '或',
            'http://survey.taobao.com/survey/QgzQDdDd?token=%TOKEN',
            '反馈问题',
          ],
        },
      },
    },
    init: function(options) {
      window.NVC_Opt = Object.assign(this.options, options);
      // 测试环境用测试账号
      if (process.env.NODE_ENV === 'development') {
        window.NVC_Opt.appkey = 'CF_APP_1';
        window.NVC_Opt.scene = 'nvc_register';
        window.NVC_Opt.trans = { nvcCode: 200 }; //	无痕验证通过。
        // window.NVC_Opt.trans = { nvcCode: 400, key1: 'code0' }; //	唤醒滑动验证，且滑动验证通过。
        // window.NVC_Opt.trans = { nvcCode: 400, key1: 'code300' }; // 唤醒滑动验证，且滑动验证未通过（拦截）。
        // window.NVC_Opt.trans = { nvcCode: 600, key1: 'code0' }; // 唤醒滑动验证，且滑动验证未通过（拦截）。
        // window.NVC_Opt.trans = { nvcCode: 600, key1: 'code300' }; // 唤醒刮刮卡验证，且刮刮卡验证未通过（拦截）。
        //   window.NVC_Opt.trans = { nvcCode: 700 }; // 唤醒问答验证。说明：由于问答验证码组件升级中，服务端暂时不会返回code为700的结果。
        //   window.NVC_Opt.trans = { nvcCode: 800 }; // 无痕验证未通过，直接拦截。
      }
      // 动态设置验证码尺寸，不然小手机上会太大，大手机上会太小
      // 然而并没有鸟用，阿里云限制了最小宽度为300，如果要适配得改设计。
      // const browserSize = getBrowserSize();
      // const captchaWidth = browserSize.width * 0.8;
      // window.NVC_Opt.customWidth = captchaWidth;
      // window.NVC_Opt.width = captchaWidth;
      // 按默认比例设置高度
      // window.NVC_Opt.height = (captchaWidth / 300) * 125;
      console.log(window.NVC_Opt);
      const o_scripts = document.getElementsByTagName('script')[0];
      const o_s = document.createElement('script');
      o_s.src = '//g.alicdn.com/sd/nvc/1.1.112/guide.js';
      o_scripts.parentNode.insertBefore(o_s, o_scripts);
      o_s.onload = () => {
        if (options && typeof options.onload === 'function') {
          options.onload();
        }
      };
    },
    getSubmitVal: function() {
      return window.getNVCVal();
    },
    checkCode: function(code) {
      /**code状态说明
       * 200：智能验证直接通过;
       * 400：智能验证会唤醒滑动验证;
       * 600：智能验证会唤醒刮刮卡验证;
       * 700：智能验证唤醒问答验证码;
       * 800：智能验证直接拦截;
       */
      var bool = false;
      if (code == 400) {
        //唤醒滑动验证
        window.getNC().then(function() {
          window.NoCaptcha.upLang('cn', {
            LOADING: '加载中...', //加载
            SLIDER_LABEL: '请向右滑动验证', //等待滑动
            CHECK_Y: '验证通过', //通过
            ERROR_TITLE: '非常抱歉，这出错了...', //拦截
            CHECK_N: '验证未通过', //准备唤醒二次验证
            OVERLAY_INFORM: '经检测你当前操作环境存在风险，请输入验证码', //二次验证
            TIPS_TITLE: '验证码错误，请重新输入', //验证码输错时的提示
          });
          window._nvc_nc.reset();
        });
      } else if (code == 600) {
        //唤醒刮刮卡
        window.getSC().then(function() {
          // 坑爹的阿里云有Bug，如果多次在同一个页面唤醒两次刮刮卡，第二次会遗留多一个class，导致样式混乱。
          try {
            const nvcDocument = document.querySelector(window.NVC_Opt.renderTo);
            nvcDocument.classList.remove('nc-pass');
          } catch (e) {
            console.error(e);
          }
        });
      } else if (code == 100 || code == 200) {
        //注册成功
        bool = true;
        // window._nvc_nc.reset();
        window.nvcReset();
      } else if (code == 800 || code == 900) {
        //直接拦截
        window.nvcReset();
      }
      return bool;
    },
  };
  